package com.base.thread.demo_01;

import java.util.Arrays;
import java.util.List;

/**
 * lambda表达式实现
 * @ClassName: Demo7
 * @Description: 
 * @Author xuyou
 * @DateTime 2019年12月7日 下午2:27:48
 */
public class Demo7 {
	
	public static void main(String[] args) {
		
		List<Integer> values = Arrays.asList(10,20,30,40);
		int res = new Demo7().add(values);
		System.out.println("计算的结果为：" + res);
		
		
	}
	
	
	/**
	 * 对list集合求和(异步实现)
	 * @Title: add
	 * @Description: 
	 * @Author xuyou
	 * @DateTime 2019年12月7日 下午2:28:08
	 * @param values
	 * @return
	 */
	public int add (List<Integer> values) {
		//parallelStream是异步实现的 输出数据不是按照顺序输出的
		values.parallelStream().forEach(System.out :: println);
		//顺序输出
		//values.parallelStream().forEachOrdered(System.out :: println);
		//求和
		return values.parallelStream().mapToInt( i -> i * 2).sum();
	}

}
